package com.rc.saas.tenant.model.enterprise;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.rc.saas.tenant.base.BaseModel;
import com.rc.saas.tenant.vo.enterprise.EnterpriseStatusConverter;
import com.rc.saas.tenant.vo.enterprise.EnterpriseStatusMemberConverter;

import java.util.Date;

public class EnterpriseMemberApply extends BaseModel {
    @ExcelIgnore
    private Long enterpriseApplyId;
    @ExcelIgnore
    private String tenantCode;
    @ExcelIgnore
    private Long memberId;
    @ExcelIgnore
    private Long enterpriseId;
    @ExcelProperty(value = "企业名称",index = 0)
    private String enterpriseName;

    @ExcelProperty(value = "统一社会信用代码",index = 2)
    private String enterpriseCredit;

    @ExcelProperty(value = "纳税人识别号",index = 3)
    private String taxPayerCode;

    @ExcelProperty(value = "开户行",index = 4)
    private String enterpriseBank;

    @ExcelProperty(value = "银行账号",index = 5)
    private String enterpriseBankAccount;

    @ExcelProperty(value = "法人姓名",index = 6)
    private String enterpriseOwner;

    @ExcelProperty(value = "法人电话",index = 7)
    private String ownerMobile;
    @ExcelIgnore
    private String applyType;

    @ExcelProperty(value = "负责人电话",index = 9)
    private String phone;

    @ExcelProperty(value = "地址",index = 10)
    private String address;
    @ExcelIgnore
    private String email;

    @ExcelProperty(value = "负责人姓名",index = 8)
    private String contactName;
    @ExcelIgnore
    private String companyImg1;
    @ExcelIgnore
    private String companyImg2;
    @ExcelIgnore
    private String companyImg3;
    @ExcelIgnore
    private String companyImg4;
    @ExcelIgnore
    private String companyImg5;

    @ExcelProperty(value = "审核状态",index = 17,converter = EnterpriseStatusConverter.class)
    private String status;
    @ExcelIgnore
    private String auditRemark;
    @ExcelIgnore
    private String createdBy;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat("yyyy-MM-dd HH:mm:ss")
    @ExcelProperty(value = "创建时间",index = 16)
    private Date createdTime;
    @ExcelIgnore
    private String lastUpdatedBy;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ExcelIgnore
    private Date lastUpdatedTime;

    /**
     * 企业类型(额外字段)
     */
    @ExcelIgnore
    private String enterpriseType;

    public String getEnterpriseType() {
        return enterpriseType;
    }

    public void setEnterpriseType(String enterpriseType) {
        this.enterpriseType = enterpriseType;
    }

    public Long getEnterpriseApplyId() {
        return enterpriseApplyId;
    }

    public void setEnterpriseApplyId(Long enterpriseApplyId) {
        this.enterpriseApplyId = enterpriseApplyId;
    }

    public String getTenantCode() {
        return tenantCode;
    }

    public void setTenantCode(String tenantCode) {
        this.tenantCode = tenantCode;
    }

    public Long getMemberId() {
        return memberId;
    }

    public void setMemberId(Long memberId) {
        this.memberId = memberId;
    }

    public Long getEnterpriseId() {
        return enterpriseId;
    }

    public void setEnterpriseId(Long enterpriseId) {
        this.enterpriseId = enterpriseId;
    }

    public String getEnterpriseName() {
        return enterpriseName;
    }

    public void setEnterpriseName(String enterpriseName) {
        this.enterpriseName = enterpriseName;
    }

    public String getEnterpriseCredit() {
        return enterpriseCredit;
    }

    public void setEnterpriseCredit(String enterpriseCredit) {
        this.enterpriseCredit = enterpriseCredit;
    }

    public String getTaxPayerCode() {
        return taxPayerCode;
    }

    public void setTaxPayerCode(String taxPayerCode) {
        this.taxPayerCode = taxPayerCode;
    }

    public String getEnterpriseBank() {
        return enterpriseBank;
    }

    public void setEnterpriseBank(String enterpriseBank) {
        this.enterpriseBank = enterpriseBank;
    }

    public String getEnterpriseBankAccount() {
        return enterpriseBankAccount;
    }

    public void setEnterpriseBankAccount(String enterpriseBankAccount) {
        this.enterpriseBankAccount = enterpriseBankAccount;
    }

    public String getEnterpriseOwner() {
        return enterpriseOwner;
    }

    public void setEnterpriseOwner(String enterpriseOwner) {
        this.enterpriseOwner = enterpriseOwner;
    }

    public String getOwnerMobile() {
        return ownerMobile;
    }

    public void setOwnerMobile(String ownerMobile) {
        this.ownerMobile = ownerMobile;
    }

    public String getApplyType() {
        return applyType;
    }

    public void setApplyType(String applyType) {
        this.applyType = applyType;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getContactName() {
        return contactName;
    }

    public void setContactName(String contactName) {
        this.contactName = contactName;
    }

    public String getCompanyImg1() {
        return companyImg1;
    }

    public void setCompanyImg1(String companyImg1) {
        this.companyImg1 = companyImg1;
    }

    public String getCompanyImg2() {
        return companyImg2;
    }

    public void setCompanyImg2(String companyImg2) {
        this.companyImg2 = companyImg2;
    }

    public String getCompanyImg3() {
        return companyImg3;
    }

    public void setCompanyImg3(String companyImg3) {
        this.companyImg3 = companyImg3;
    }

    public String getCompanyImg4() {
        return companyImg4;
    }

    public void setCompanyImg4(String companyImg4) {
        this.companyImg4 = companyImg4;
    }

    public String getCompanyImg5() {
        return companyImg5;
    }

    public void setCompanyImg5(String companyImg5) {
        this.companyImg5 = companyImg5;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getAuditRemark() {
        return auditRemark;
    }

    public void setAuditRemark(String auditRemark) {
        this.auditRemark = auditRemark;
    }

    public String getCreatedBy() {
        return createdBy;
    }

    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    public Date getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(Date createdTime) {
        this.createdTime = createdTime;
    }

    public String getLastUpdatedBy() {
        return lastUpdatedBy;
    }

    public void setLastUpdatedBy(String lastUpdatedBy) {
        this.lastUpdatedBy = lastUpdatedBy;
    }

    public Date getLastUpdatedTime() {
        return lastUpdatedTime;
    }

    public void setLastUpdatedTime(Date lastUpdatedTime) {
        this.lastUpdatedTime = lastUpdatedTime;
    }
}
